package library.operation;

import library.BookList;
import library.Book;

import java.util.Scanner;

public class DelOperation implements IOperation {
    @Override
    public void work(BookList bookList){
        System.out.println("删除书籍");
        //用户来输入，要删除拿一本书
        //可以按照书名删除，也可以按照序号来删除
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入要删除的书名或者序号：");
        int index = scanner.nextInt();
        if (index < 0 || index >= bookList.getSize()){
            System.out.println("序号超出范围");
            return;
        }
        //如何删除数组中指定元素的
        //判定一下当前的这个下标是否是最后一个元素
        if (index == bookList.getSize() - 1){
            //如果是最后一个元素，直接删除
            bookList.setSize(bookList.getSize() - 1);
        }else{
            //如果不是最后一个元素，则进行替换，再size减一
            Book lastBook = bookList.getBook(bookList.getSize() - 1);
            //把书放到index位置
            bookList.setBook(index, lastBook);
            //在进行size减一
            bookList.setSize(bookList.getSize() - 1);
        }
        System.out.println("删除书籍成功！");
    }
}
